/**
Defines the main function for the tcpechotime client.
*/
#include "globals.h"

/**
The main function.
*/
int 
main(
    int argc,
    char *argv[]
    )
{
    char* ip_addr;
    char menu_opt[MENU_ITEM_LENGTH];
    int pfd[2];
    int err;
  
    //
    // Validte arguments.
    //

    if (argc != 2)
    {
        log_msg("\nInvalid usage.\nUsage:\nclient <IP-Address>\n\tor\
        \nclient <Domain-Name>");
    }

    ip_addr = get_ip_addr(argv[1]);

    if (ip_addr == NULL)
    {
        err_ret("Could not resolve hostname/address.");
    }

    //
    // Initialize the signal handler.
    //

    Signal(SIGCHLD, sig_chld);

    while(TRUE)
    {
        printf(MENU_STR);
        scanf("%s",menu_opt);

        if (!strcmp(menu_opt, MENU_ITEM_ECHO))
        {
            //
            // Execute the echo client.
            //

            exec_echo_client(pfd, ip_addr);            
        }
        else if (!strcmp(menu_opt, MENU_ITEM_TIME))
        {
            //
            // Execute the day time client.
            //

            exec_time_client(pfd, ip_addr);            
        }
        else if (!strcmp(menu_opt, MENU_ITEM_QUIT))
        {
            //
            // Done. Quit.
            //

            break;
        }
        else
        {
            printf("Command '%s' not supported\n", menu_opt);
            continue;
        }
    }

    return 0;
}

